package com.ruoyi.activity.domain;

import com.ruoyi.common.annotation.Excels;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.annotation.Excel.Type;

/**
 * 教师信息对象 act_teacher
 * 
 * @author YZD
 * @date 2022-07-09
 */
public class ActTeacher extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 教师ID */
    private Long id;

    /** 教师编号 */
    @Excel(name = "教师编号")
    private String teacherCode;

    /** 用户名（老师真实姓名） */
    @Excel(name = "教师名")
    private String teacherName;

    /** 用户id */
    private Long sysUserId;

    /** 职称 */
    @Excel(name = "职称")
    private String academicTitle;

    /** 状态（0.在职 1.离职） */
    @Excel(name = "状态", readConverterExp = "0=.在职,1=.离职")
    private Long status;

    /**
     * 用户账号信息
     */
    @Excels({
            @Excel(name = "登录名称",targetAttr = "loginName",type = Type.EXPORT),
            @Excel(name = "昵称",targetAttr = "userName",type = Type.EXPORT),
            @Excel(name = "邮箱",targetAttr = "email",type = Type.EXPORT),
            @Excel(name = "手机号码",targetAttr = "phonenumber",type = Type.EXPORT),
            @Excel(name = "性别", readConverterExp = "0=男,1=女,2=未知",targetAttr = "sex",type = Type.EXPORT),
            @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用",targetAttr = "status",type = Type.EXPORT),
    })
    private SysUser sysUser;

    /**
     * 部门信息/部门对象
     */
    @Excels({
            @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
            @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
    })
    private SysDept sysDept;

    public SysUser getSysUser() {
        return sysUser;
    }

    public void setSysUser(SysUser sysUser) {
        this.sysUser = sysUser;
    }

    public SysDept getSysDept() {
        return sysDept;
    }

    public void setSysDept(SysDept sysDept) {
        this.sysDept = sysDept;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setTeacherCode(String teacherCode) 
    {
        this.teacherCode = teacherCode;
    }

    public String getTeacherCode() 
    {
        return teacherCode;
    }
    public void setTeacherName(String teacherName) 
    {
        this.teacherName = teacherName;
    }

    public String getTeacherName() 
    {
        return teacherName;
    }

    public void setSysUserId(Long sysUserId) 
    {
        this.sysUserId = sysUserId;
    }

    public Long getSysUserId() 
    {
        return sysUserId;
    }
    public void setAcademicTitle(String academicTitle) 
    {
        this.academicTitle = academicTitle;
    }

    public String getAcademicTitle() 
    {
        return academicTitle;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("teacherCode", getTeacherCode())
            .append("teacherName", getTeacherName())
            .append("sysUserId", getSysUserId())
            .append("academicTitle", getAcademicTitle())
            .append("status", getStatus())
            .toString();
    }
}
